With the tremendous advances in computer processing power and network capabilities over the past decade, the popularity of graphical user interfaces for viewing information over a network has increased substantially. Whereas in the past most networks used text displays to convey data from a server to a user, most interfaces today use graphics to convey information in a manner that is not only more pleasing to the eye, but also allows data to be manipulated and presented in ways not possible with pure text.
The first graphical user interfaces for networks were primitive and not entirely intuitive. A user would have to type complex commands to select the data to be displayed or to change the manner the data is displayed. Searches also required complex commands that were not very different from those used for text-based interfaces. However, searches were often the only way to find the desired data, since these primitive interfaces were not able to take full advantage of the links, to the extent that they existed, to quickly move a user from one set of data to another related set of data.
Today, browsers with graphical user interfaces are often used for viewing data across a network. Examples of popular browsers being used today are Netscape Navigator and Microsoft Explorer. Today's browsers can take greater advantage of links between related sets of data, and use these links to navigate among the various sets, including going up and down data hierarchies and revisiting previously viewed data.
While browsers and their graphical user interfaces are becoming increasingly sophisticated, the underlying data itself has become more complex. Data may be organized into huge databases of information that is spread across a network. Data may be organized into objects, including applications and related files, or groups thereof. This data may be organized in larger hierarchies, often many levels deep.
These hierarchically organized objects and groups usually consist of textual data, icons, or two-dimensional images. New development tools, such as JAVA, allow browsers to display more sophisticated objects, such as moving pictures or moving text. However, even these objects are limited by the underlying descriptive language used to create them. For example, today's browsers are not capable of displaying interactive VRML (Virtual Reality Markup Language) worlds.
It has become a challenge to present data in a clear and efficient manner through networks. Browsers can display only a limited amount of information on a user's screen at any given time. If a user chooses to use one lens, or window, to display a given set of data, the data disappears when a user subsequently displays other sets of data. If a user then wishes to revisit a prior set of data, it is usually necessary to visit all the links between the most recently viewed set of data and the desired prior set of data. Although most browsers allow users to create bookmarks for a given set of data, bookmarks are not automatically created, and require extra effort on a user's part. Many browsers also keep a list of recently accessed data, but users are then required to have the list displayed on the screen (taking up valuable screen space) and then remember which set of data is the desired set.
Some browsers allow users to have multiple lenses, or windows, each with a different set of data, displayed on the screen at any given time. However, as the multiple windows start overlapping each other, a user can easily lose track of the order in which the data was visited. Alternatively, a user may wish to recall the hierarchy of the sets of data previously visited, which is also easily forgotten when multiple windows are displayed.
On the other hand, a user may wish to have easy access to links to frequently accessed data. As noted above, most browsers allow a user to create bookmarks. However, as the number of bookmarks increases, it becomes more difficult for the user to quickly find a particular bookmark. This problem may be alleviated somewhat by having a hierarchical structure of bookmarks. However, this is far from a perfect solution, as an increasingly complicated hierarchical structure of bookmarks makes it even more difficult for a user to find a particular link, and time is wasted going through the various levels of the hierarchical structure. Thus, there is also a need to organize links in a manner that makes them readily accessible.